﻿/**
 * 主程序，测试虚拟机的运行
 *
 * 创建时间：2022年5月21日
 * 作者：李述铜
 * 联系邮箱: 527676163@qq.com
 */
#include <stdio.h>
#include <stdlib.h>
#include "simu8051.h"

// nop, nop, sjmp $
static uint8_t t0_nop_code[] = {0x00, 0x00, 0x80, 0xFE};

void test_instr(void) {
    uint16_t pc;

    printf("begin test t0_nop_code\n");

    simu8051_reset();
    simu8051_load(t0_nop_code);
    do {
        instr_t instr;
        
        pc = simu8051_pc();

        simu8051_fetch_instr(&instr);
        simu8051_exec(&instr);
    } while (pc != simu8051_pc());

    printf("test ok.\n");
}

int main() {
    simu8051_init();
    test_instr();
    return 0;
}
